
        <html>
			<head>
			     <title>网络小黑揭秘系列之黑色SEO初探 - 360安全卫士</title>
				 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
			</head>
			<body>
				<h1>原文地址:<a href="http://drops.wooyun.org/papers/11448">http://drops.wooyun.org/papers/11448</a></h1>
				
      <p>
        <p><strong>Author:360天眼实验室</strong></p>

<h1>0x00 引子</h1>

<hr />

<p>人在做，天在看。</p>

<p>11月底的时候，360天眼安全实验室发布了一篇文章：网络小黑揭秘系列之私服牧马人，揭露了一起污染私服搭建工具和用户登录端程序进行木马传播的事件。其实，类似的案例远不限于此，这次我们揭露另一根链条出来，当然还是从一个样本开始。</p>

<!--more-->

<h1>0x01 样本及基础设施</h1>

<hr />

<p>实验室在日常的恶意代码处理时注意到了一个文件名为“YY某主播视频.exe”（MD5: 27C8E69F7241476C58C071E83616D2B5）的远控木马：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704301080527180.png" alt="p1" /></p>

<p>基本上，如果是一个国产木马，如果猜大灰狼，你就有90%的概率正确，这个木马当然也是。木马作者命名为“killqipilang”，就算大灰狼的变种吧。</p>

<p>对样本的分析就不多说了，想了解大灰狼远控的代码架构可以参看天眼实验室之前的那个揭秘。很容易就提取到木马内部编码过的上线URL为“qq867126996.3322.org”：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704301296594230.png" alt="p2" /></p>

<p>使用360天眼实验室的可视化关联分析系统进行追踪溯源，发现该木马还关联了另一个上线URL：luanqi.net。由此线索继续，又关联到更多样本，其中一个名为“hexSB360.exe”（没错，木马作者对360都怀有极深的怨念）的程序（MD5: E4C62055D1BCEB88D97903562B9E1BE8），又一个大灰狼远控。</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704301430350324.png" alt="p3" /></p>

<p>从此样本，我们提取到了其核心远控模块下载地址：<code>http://118.***.***.230:8080/Consys21.dll</code>。</p>

<p>整个交互式的分析过程在交互式的关联平台上就是如下这个样子：</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170430164951642.jpg" alt="p4" /></p>

<p>关联系统还告诉我们这个木马还使用了其他多个上线域名。有免费的二级域名qq867126996.3322.org、q332299.f3322.net，也有收费的顶级域名luanqi.net、lyisi.org、sb.jiushao.net、huo-dian.com。</p>

<p>对非免费域名做追溯一般是非常重要的突破点，我们可以查询一下相关的Whois信息。以下是域名luanqi.net的，可见做了隐私保护。</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704301881902519.png" alt="p5" /></p>

<p>域名lyisi.org的：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704302089643619.png" alt="p6" /></p>

<p>域名jiushao.net的</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704302278089718.png" alt="p7" /></p>

<p>域名huo-dian.com的：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704302432295817.png" alt="p8" /></p>

<p><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="8365302b65070c673b0966183d673b2e641907e7f7b3b6babbc3ecf6f7efecece8ade0ecee6b3c1a673b2965302b66050f6a012d642d32">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>，其名下注册的域名大多数已经被360拦截，其中不乏淘宝钓鱼站或者虚假商城，比如www.000268.cn，现时应该iphone6s才是热门机型，iPhone5都已经淘汰了，却出现在该商城的首页，只能说钓鱼也不够用心。</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704302686008916.png" alt="p9" /></p>

<p>在知道了样本关联出来的网络基础设施以后，利用一个众所周知的漏洞我们控制了小黑使用的某些服务器。在其中一台服务器上，我们看到了大灰狼远控的管理程序，在任务管理器这个木马控制端程序的CPU占用已经达到了12%：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704302826948102.jpg" alt="p10" /></p>

<p>当时由于小黑正在线，我们用netstat命令查看一下该主机上目前已经上线的肉鸡：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704303175713112.jpg" alt="p11" /></p>

<p>嗯，似乎控制的肉鸡并不多，这个服务器就只是做木马的控制端吗？没那么简单，接着往下看。</p>

<h1>0x02 枪和驾照</h1>

<hr />

<p>翻服务器磁盘，我们发现该服务器上有个“泛站群系统”，该系统可以使得国内的搜索引擎收录更快，但被降权的速度也很快，所以这些服务器上会起用大量的域名和IP。下图是系统的使用说明：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704303371100123.jpg" alt="p12" /></p>

<p>这台服务器上绑了多个外网IP：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704303562803133.jpg" alt="p13" /></p>

<p>依赖360网络研究院提供的DNS基础数据，我们获取了近期绑定在这些IP上的域名列表如下：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704303746535143.jpg" alt="p14" /></p>

<p>从这张列表中抽取了部份域名在某搜索引擎中做了验证，发现结果让我们有些心惊胆跳：</p>

<p><img src="http://static.wooyun.org//drops/20151217/20151217043038855271513.png" alt="p15" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/20151217043040792351611.png" alt="p16" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/20151217043041229091711.png" alt="p17" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704304388046188.png" alt="p18" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704304412469196.png" alt="p19" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704304658659205.png" alt="p20" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/20151217043047463002112.png" alt="p21" /></p>

<p>很显然都是SEO卖枪的，而这些枪的关键词又正好在服务上就有发现：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704304951168221.jpg" alt="p22" /></p>

<p>通过whois信息的查询，<a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="93761c02741d23751a13750f1a75251a750d39760c0c76031e7a102e772e2c74073be2faf2fdf4e0f6fcd3a2a1a5bdf0fcfe75203b76151f">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script>，从这样直白的邮箱名来看，邮箱背后的人看来专门从事枪关键词SEO。</p>

<p>继续挖掘服务器上的文件，我们还发现了XISE Webshell管理器，呵，一个好长的列表，已经被地下管理员接管的机器真不少：</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170430513889323.jpg" alt="p23" /></p>

<p>这些被黑的站点用来做什么了呢？看看小黑怎么操作那些Webshell就知道了：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704305387938241.jpg" alt="p24" /></p>

<p>可见除了在自己的网站使用“泛站群”达到快速恶意SEO的目的，小黑还使用扫描器大量扫描存在漏洞的网站植入webshell，向这些网站写入要SEO的信息达到快速SEO的目的。随机抽了些被黑SEO的网站：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704305448388251.jpg" alt="p25" /></p>

<p>政府网站历来都是被黑链的重灾区，对此只能一声叹息。</p>

<h1>0x03 余额宝</h1>

<hr />

<p>翻服务器文件系统的过程中总是惊喜不断，打开一个目录<code>"XISE蜘蛛池\niubi\keywords"</code>下的1.txt，里面一堆和支付宝相关的关键词挺令人震惊：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704305772078263.png" alt="p26" /></p>

<p>原来小黑还通过“泛站群”做恶意SEO，使人在使用国内某些搜索引擎的时候找到钓鱼信息，坐等鱼上钩：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704305854431274.png" alt="p27" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704305983433283.png" alt="p28" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704310186246293.png" alt="p29" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704310265393302.png" alt="p30" /></p>

<h1>0x04 后门</h1>

<hr />

<p>使用这台服务器的小黑也和绝大多数小黑一样，都是拿来主义，可拿来主义不等于免费主义，要么自己多个心，要么就交点学费。我们从这台服务器上取回来的SSH爆破程序包中就直接发现了“Usp10.dll”（MD5: B846B1BD3C4B5815D55C50C352606238）的盗号木马，而运行“SSH最终版（稳定）.exe”（MD5: 59F7BC439B3B021A70F221503B650C9C）这个主程序后也会在<code>%temp%</code>文件夹中释放2个文件：一个SSHguiRelease.exe（MD5: AB72FC7622B9601B0180456777EFDE5D），真正的SSH爆破程序；另一个filter32.exe（MD5: 7218C74654774B1FDE88B59465B2748C），使用易语言编写的程序，经分析发现该文件会向147**&#42;|||&#42;<em>&#42;|&#42;</em>@163.com这个邮箱发送文件。</p>

<p>外面的Usp10.dll可能是被无意感染的，而里面的那个发邮件后门则明显是故意植入的，防不胜防。</p>

<p><img src="http://static.wooyun.org//drops/20151217/20151217043104687653111.png" alt="p31" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704310738787325.png" alt="p32" /></p>

<p>Usp10.dll这类恶意代码是dll劫持型木马，一个小心就全盘感染了。但从服务器上取回来的样本中只有2个软件包存在，且都是工具类的，服务器上并没有感染这个样本。</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704310832135332.png" alt="p33" /></p>

<p>上面这个工具可能来源于“泯灭安全网”，写稿时凑趣地网站维护了，只好贴个搜索快照图：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704311082607343.png" alt="p34" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704311216612353.png" alt="p35" /></p>

<p>对后门代码进一步反汇编分析，确认147<strong><em>||</em></strong>|<strong>@163.com即是收件邮箱又是发送的邮箱，而这个邮箱的密码是：sgg<strong><em>|</em></strong>|</strong>&#42;|&#42;*cc，通过SMTP协议将要偷取的信息发送出去。下图是涉及在黑客工具中植入的后门往163邮箱发送数据的代码：</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170431135319436.jpg" alt="p36" /></p>

<p>随后使用木马中配置的账号和密码进入这个发件邮箱，我们当然会摸进邮箱里去看看了。在收件箱中有41封邮箱，发件箱中有388封，已删除邮箱有5封，而这些数据仅是近一个月的数据。</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170431153508537.jpg" alt="p37" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170431177328638.jpg" alt="p38" /></p>

<p>通过统计所有邮件头中的“Received”包含的IP，可以看到有不少中招小黑交了大量的学费。</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170431188366339.jpg" alt="p39" /></p>

<p>在这些邮件中，不仅有小黑们的木马配置信息，还有大量扫描出来的IP及相对应的账号和密码信息。</p>

<p><img src="http://static.wooyun.org//drops/20151217/201512170431219820440.jpg" alt="p40" /></p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704312262157411.jpg" alt="p41" /></p>

<p>在黑产圈子，没有黑吃黑才是不正常的，关于工具后门其实还有可说的，请期待天眼实验室的下一篇扒皮。</p>

<p>比较逗的是，这个服务器上的黑客工具居然有感染了“Parite”病毒，可能是我们在翻服务器文件时激活的（论服务器也安个360的重要性），以致于最新更新的大灰狼远控也被感染了。</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704312454953423.png" alt="p42" /></p>

<p>因为“Parite”会使得系统变慢，不停的弹出文件保护的窗口，使大灰狼远控不再免杀，可能因为这个原因小黑发现异常把系统重做了导致我们对服务器失去控制。</p>

<h1>0x05 总结</h1>

<hr />

<p>就这样，我们零距离观察了一台多功能的黑产工作站（只是众多机器之一），我们的发现大致可以归纳成如下的图：</p>

<p><img src="http://static.wooyun.org//drops/20151217/2015121704312636706432.png" alt="p43" /></p>

<p>操作这些的是新时代的Script Kiddies，他们租个服务器，找些自动化的撸站工具，程序开起来就算开干了，充当产业链上最初级的角色，在他的环节里通过现成的渠道变点现。他们所使用的服务器工具存在漏洞，撸站工具包含后门，甚至都处理不了恶意代码的感染，因这些问题的损失都是技能不足交的税。他们最容易被分析和打击（如果有人想打击的话），但是，这一切都不会影响他们的活动，只要能不怎么花力气的挣点钱。</p>

<p>另外，天眼实验室还在招人，恶意代码分析方向，海量多维度的数据带来不同的眼界，投条请往：<a href="&#109;&#x61;&#x69;&#108;&#116;&#x6f;&#58;&#122;&#x68;&#x61;&#110;&#x67;&#x73;&#104;&#117;&#x74;&#105;&#110;&#x67;&#x40;&#51;&#x36;&#x30;&#46;&#99;&#x6e;">&#122;&#x68;&#x61;&#110;&#x67;&#x73;&#104;&#117;&#x74;&#105;&#110;&#x67;&#x40;&#51;&#x36;&#x30;&#46;&#99;&#x6e;</a></p>

<h1>0x06 威胁信息</h1>

<hr />

<p>以下就是些入侵指示数据，尽管现在威胁情报很热，但目前国内的安全设备对于机读IOC的支持并不广泛，也就不装模作样地提供什么OpenIOC或STIX格式的XML了，读者可以根据自己的需要加入到设备的检测目标里。</p>

<table>
<thead>
<tr>
  <th align="left">类型</th>
  <th align="left">值</th>
  <th align="left">备注</th>
</tr>
</thead>
<tbody>
<tr>
  <td align="left">MD5</td>
  <td align="left">27C8E69F7241476C58C071E83616D2B5</td>
  <td align="left">YY某主播视频.exe</td>
</tr>
<tr>
  <td align="left">MD5</td>
  <td align="left">E4C62055D1BCEB88D97903562B9E1BE8</td>
  <td align="left">hexSB360.exe</td>
</tr>
<tr>
  <td align="left">MD5</td>
  <td align="left">B846B1BD3C4B5815D55C50C352606238</td>
  <td align="left">usp10.dll</td>
</tr>
<tr>
  <td align="left">MD5</td>
  <td align="left">59F7BC439B3B021A70F221503B650C9C</td>
  <td align="left">SSH最终版（稳定）.exe</td>
</tr>
<tr>
  <td align="left">MD5</td>
  <td align="left">7218C74654774B1FDE88B59465B2748C</td>
  <td align="left">filter32.exe</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">qq867126996.3322.org</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">q332299.f3322.net</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">luanqi.net</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">lyisi.org</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">sb.jiushao.net</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">huo-dian.com</td>
  <td align="left">CC地址</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">www.000268.cn</td>
  <td align="left">钓鱼网站</td>
</tr>
<tr>
  <td align="left">Domain</td>
  <td align="left">www.dlyymy.cn</td>
  <td align="left">黑客网站</td>
</tr>
<tr>
  <td align="left">email</td>
  <td align="left"><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="187c6c282d212058776d6c74777773367b7775">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script></td>
  <td align="left">注册大量钓鱼网站</td>
</tr>
<tr>
  <td align="left">email</td>
  <td align="left"><a class="__cf_email__" href="/cdn-cgi/l/email-protection" data-cfemail="19687078777e6a7c7659282b2f377a7674">[email&#160;protected]</a><script data-cfhash='f9e31' type="text/javascript">/* <![CDATA[ */!function(t,e,r,n,c,a,p){try{t=document.currentScript||function(){for(t=document.getElementsByTagName('script'),e=t.length;e--;)if(t[e].getAttribute('data-cfhash'))return t[e]}();if(t&&(c=t.previousSibling)){p=t.parentNode;if(a=c.getAttribute('data-cfemail')){for(e='',r='0x'+a.substr(0,2)|0,n=2;a.length-n;n+=2)e+='%'+('0'+('0x'+a.substr(n,2)^r).toString(16)).slice(-2);p.replaceChild(document.createTextNode(decodeURIComponent(e)),c)}p.removeChild(t)}}catch(u){}}()/* ]]> */</script></td>
  <td align="left">注册大量枪支推广网站</td>
</tr>
</tbody>
</table>      </p>
    
			</body>
		</html>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          